1. Field of the Invention
The present invention relates generally to computer systems and specifically to co-located computer systems in a framework including removable function modules which add modular functionality.
2. Description of the Related Art
Many commercial businesses and enterprises make extensive use of personal computers (PCs) in their daily operations. Typically, each user of a personal computer in the enterprise has a networked PC at their desk or work area. As the number of networked computer systems utilized in an enterprise increases, the management of such resources becomes increasingly complex and expensive. Some of the manageability issues involved in maintaining a large number of networked computer systems include ease of installation and deployment, the topology and physical logistics of the network, asset management, scalability (the cost and effort involved in increasing the number of units), troubleshooting network or unit problems, support costs, software tracking and management, as well as the simple issue of physical space, be it floor space or room on the desktop. In addition, there are security issues regarding physical assets, data protection, and software control. In many business establishments, such as call centers, there is no need for the user to install software on his/her unit, and in fact, management may specifically forbid employees from doing so. However, the standard personal computer configuration inherently provides the user this ability because the system is typically located with the user, and includes a floppy drive, CDROM, and one or more hard drives. Ensuring that unauthorized software is not installed on any of the machines in the network involves periodically personally auditing the software contents of each machine, at substantial cost in time and effort.
Many of these issues may be addressed by centralizing the locations of the personal computers, such as by installing multiple PCs into a central frame or cabinet. Prior art has generally been applied to servers and has focused on installing a standard PC into a sliding cabinet, where the term “standard PC” refers to a motherboard with extension slots, floppy disc and CD drives, and a general open architecture supporting almost any standard expansion card.
Two variations of this approach are typical. The first is to stand a standard PC motherboard on its edge to create a taller, thinner PC. All connections are on a rear panel and any ancillary boards plug in sideways to the motherboard. The second variation consists of plugging the PC motherboard into a back plane (either vertical or horizontal) which also receives any ancillary cards required. Both of these configurations lend themselves to a slide-drawer approach to packaging. However, there are numerous disadvantages with these approaches due to the fact that various compromises in size and feature set have been made to accommodate a wide assortment of feature addition cards. Such disadvantages include a higher product cost and a large physical size for each unit. In addition, the terminations and connections at the back of each unit are awkward to use—in the case of the first approach the terminations are on the motherboard, requiring the removal of all connectors before removing the board from its slide drawer case; in the case of the back plane based system the edge connections for each card have a high number of connections which creates a connection environment which is both fragile and difficult to administer.
One issue with clustered or co-located computers is adding functionality to each of the computers. In the present disclosure, the term “feature device” refers to a device that may be added to a computer which adds functionality to the computer. The prior art approach for adding operational features to clustered personal computers has typically been to install each feature device in a central location and run cables from each feature device to the appropriate I/O ports on each computer. This approach has numerous disadvantages, described below.
Using a variety of individual feature devices means the replication of items such as the feature device chassis and power supplies. These items are common to all the elements of the system but in a practical situation must reproduced individually in each feature device that provides a function or service. This replication substantially increases the cost of the system.
Typically additional feature devices in computers are designed and built by different manufactures, as each manufacturer tends to specialize in a given feature set. Connecting these divergent devices together requires both the fabrication and installation of many connecting cables, thereby greatly increasing the complexity and difficulty of system installation.
Additionally, scaling a particular feature upward, i.e., applying the new feature to added computer units compounds the issues of wiring and physical placement noted above. Such approaches resist expansion or extension of the system by creating a disproportionately heavy installation workload, and so decreases the scalability of the system.
Typically the multiple electronic packages used to add features to a system require additional space, cooling, and attention. The addition of the feature devices to a system may require redistribution of the original installed hardware, which may result in considerable planning effort and physical labor, as well as affecting the size of the system, which then may affect the space requirements and consequently, the location of the system.
Combining multiple feature sets in a system requires careful consideration of possible unintended and undesirable consequences caused by the relationships among processes and equipment. Considerable research and consideration should be given to the synergy of the feature elements in a system, which may be time consuming and expensive, and which may substantially increase the difficulty of designing the system. Once installed, tuning the actual performing relationships between the various hardware based feature sets requires substantial debugging time, cost, and special talent. The long term performance of the system is a function of interfacing as well as unique signaling conditions, and the increased cabling requirements may cause substantial performance limitations.
Finally, the use of multiple and varied feature devices from different vendors, which are typically connected in series, lowers the reliability of the system by compounding the devices' Mean Time Between Failures, thus decreasing the reliability of the system.
Therefore, improved systems and methods are desired for adding modular functionality to co-located computer systems.